home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / elm / elm2.3pl11 / utils / mailrc.awk < prev    next >
Encoding:
AWK Script  |  1990-04-28  |  1.3 KB  |  65 lines

  1. #
  2. # @(#)$Id: mailrc.awk,v 4.1 90/04/28 22:44:44 syd Exp $
  3. #    Copyright (c) 1986, 1987 Dave Taylor
  4. #    Copyright (c) 1988, 1989, 1990 USENET Community Trust
  5. # Bug reports, patches, comments, suggestions should be sent to:
  6. #
  7. #    Syd Weinstein, Elm Coordinator - elm@DSI.COM
  8. #                     dsinc!elm
  9. #
  10. # $Log:    mailrc.awk,v $
  11. # Revision 4.1  90/04/28  22:44:44  syd
  12. # checkin of Elm 2.3 as of Release PL0
  13. #
  14.  
  15.  
  16. BEGIN { 
  17.     print "# MSG alias_text file, from a .mailrc file..." 
  18.     print ""
  19.       }
  20.  
  21. next_line == 1 { 
  22.  
  23.     next_line = 0;
  24.         group = ""
  25.     for (i = 1; i <= NF; i++) {
  26.       if (i == NF && $i == "\\") sep = ""
  27.       else                       sep = ", "
  28.     
  29.       if ($i == "\\") {
  30.         group = sprintf("%s,", group)
  31.         next_line = 1;
  32.       }
  33.       else if (length(group) > 0)
  34.         group = sprintf("%s%s%s", group, sep, $i);
  35.       else
  36.         group = $i;
  37.       }
  38.       print "\t" group
  39.  
  40.     }
  41.  
  42. $1 ~ /[Aa]lias|[Gg]roup/ { 
  43.  
  44.     if ( NF == 3)
  45.       print $2 " = user alias = " $3;
  46.     else {
  47.       group = ""
  48.       for (i = 3; i <= NF; i++) {
  49.         if (i == NF && $i == "\\") sep = ""
  50.         else        sep = ", "
  51.     
  52.         if ($i == "\\") {
  53.            group = sprintf("%s,", group)
  54.            next_line = 1;
  55.         }
  56.         else if (length(group) > 0) 
  57.            group = sprintf("%s%s%s", group, sep, $i);
  58.         else
  59.            group = $i;
  60.         }
  61.         print $2 " = group alias = " group;
  62.       }
  63.      }
  64.